package mn.idax.exchange.otc.entity;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class OTCAdsExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OTCAdsExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("Id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("Id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("Id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("Id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("Id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("Id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("Id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("Id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("Id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("Id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("Id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("Id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andPublisheridIsNull() {
            addCriterion("PublisherId is null");
            return (Criteria) this;
        }

        public Criteria andPublisheridIsNotNull() {
            addCriterion("PublisherId is not null");
            return (Criteria) this;
        }

        public Criteria andPublisheridEqualTo(Integer value) {
            addCriterion("PublisherId =", value, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridNotEqualTo(Integer value) {
            addCriterion("PublisherId <>", value, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridGreaterThan(Integer value) {
            addCriterion("PublisherId >", value, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridGreaterThanOrEqualTo(Integer value) {
            addCriterion("PublisherId >=", value, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridLessThan(Integer value) {
            addCriterion("PublisherId <", value, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridLessThanOrEqualTo(Integer value) {
            addCriterion("PublisherId <=", value, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridIn(List<Integer> values) {
            addCriterion("PublisherId in", values, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridNotIn(List<Integer> values) {
            addCriterion("PublisherId not in", values, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridBetween(Integer value1, Integer value2) {
            addCriterion("PublisherId between", value1, value2, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPublisheridNotBetween(Integer value1, Integer value2) {
            addCriterion("PublisherId not between", value1, value2, "publisherid");
            return (Criteria) this;
        }

        public Criteria andPairidIsNull() {
            addCriterion("PairId is null");
            return (Criteria) this;
        }

        public Criteria andPairidIsNotNull() {
            addCriterion("PairId is not null");
            return (Criteria) this;
        }

        public Criteria andPairidEqualTo(Integer value) {
            addCriterion("PairId =", value, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidNotEqualTo(Integer value) {
            addCriterion("PairId <>", value, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidGreaterThan(Integer value) {
            addCriterion("PairId >", value, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidGreaterThanOrEqualTo(Integer value) {
            addCriterion("PairId >=", value, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidLessThan(Integer value) {
            addCriterion("PairId <", value, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidLessThanOrEqualTo(Integer value) {
            addCriterion("PairId <=", value, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidIn(List<Integer> values) {
            addCriterion("PairId in", values, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidNotIn(List<Integer> values) {
            addCriterion("PairId not in", values, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidBetween(Integer value1, Integer value2) {
            addCriterion("PairId between", value1, value2, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairidNotBetween(Integer value1, Integer value2) {
            addCriterion("PairId not between", value1, value2, "pairid");
            return (Criteria) this;
        }

        public Criteria andPairnameIsNull() {
            addCriterion("PairName is null");
            return (Criteria) this;
        }

        public Criteria andPairnameIsNotNull() {
            addCriterion("PairName is not null");
            return (Criteria) this;
        }

        public Criteria andPairnameEqualTo(String value) {
            addCriterion("PairName =", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameNotEqualTo(String value) {
            addCriterion("PairName <>", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameGreaterThan(String value) {
            addCriterion("PairName >", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameGreaterThanOrEqualTo(String value) {
            addCriterion("PairName >=", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameLessThan(String value) {
            addCriterion("PairName <", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameLessThanOrEqualTo(String value) {
            addCriterion("PairName <=", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameLike(String value) {
            addCriterion("PairName like", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameNotLike(String value) {
            addCriterion("PairName not like", value, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameIn(List<String> values) {
            addCriterion("PairName in", values, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameNotIn(List<String> values) {
            addCriterion("PairName not in", values, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameBetween(String value1, String value2) {
            addCriterion("PairName between", value1, value2, "pairname");
            return (Criteria) this;
        }

        public Criteria andPairnameNotBetween(String value1, String value2) {
            addCriterion("PairName not between", value1, value2, "pairname");
            return (Criteria) this;
        }

        public Criteria andPriceIsNull() {
            addCriterion("Price is null");
            return (Criteria) this;
        }

        public Criteria andPriceIsNotNull() {
            addCriterion("Price is not null");
            return (Criteria) this;
        }

        public Criteria andPriceEqualTo(BigDecimal value) {
            addCriterion("Price =", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotEqualTo(BigDecimal value) {
            addCriterion("Price <>", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThan(BigDecimal value) {
            addCriterion("Price >", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("Price >=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThan(BigDecimal value) {
            addCriterion("Price <", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("Price <=", value, "price");
            return (Criteria) this;
        }

        public Criteria andPriceIn(List<BigDecimal> values) {
            addCriterion("Price in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotIn(List<BigDecimal> values) {
            addCriterion("Price not in", values, "price");
            return (Criteria) this;
        }

        public Criteria andPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Price between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("Price not between", value1, value2, "price");
            return (Criteria) this;
        }

        public Criteria andMinamountIsNull() {
            addCriterion("MinAmount is null");
            return (Criteria) this;
        }

        public Criteria andMinamountIsNotNull() {
            addCriterion("MinAmount is not null");
            return (Criteria) this;
        }

        public Criteria andMinamountEqualTo(BigDecimal value) {
            addCriterion("MinAmount =", value, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountNotEqualTo(BigDecimal value) {
            addCriterion("MinAmount <>", value, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountGreaterThan(BigDecimal value) {
            addCriterion("MinAmount >", value, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("MinAmount >=", value, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountLessThan(BigDecimal value) {
            addCriterion("MinAmount <", value, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("MinAmount <=", value, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountIn(List<BigDecimal> values) {
            addCriterion("MinAmount in", values, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountNotIn(List<BigDecimal> values) {
            addCriterion("MinAmount not in", values, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MinAmount between", value1, value2, "minamount");
            return (Criteria) this;
        }

        public Criteria andMinamountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MinAmount not between", value1, value2, "minamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountIsNull() {
            addCriterion("MaxAmount is null");
            return (Criteria) this;
        }

        public Criteria andMaxamountIsNotNull() {
            addCriterion("MaxAmount is not null");
            return (Criteria) this;
        }

        public Criteria andMaxamountEqualTo(BigDecimal value) {
            addCriterion("MaxAmount =", value, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountNotEqualTo(BigDecimal value) {
            addCriterion("MaxAmount <>", value, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountGreaterThan(BigDecimal value) {
            addCriterion("MaxAmount >", value, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("MaxAmount >=", value, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountLessThan(BigDecimal value) {
            addCriterion("MaxAmount <", value, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("MaxAmount <=", value, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountIn(List<BigDecimal> values) {
            addCriterion("MaxAmount in", values, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountNotIn(List<BigDecimal> values) {
            addCriterion("MaxAmount not in", values, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MaxAmount between", value1, value2, "maxamount");
            return (Criteria) this;
        }

        public Criteria andMaxamountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MaxAmount not between", value1, value2, "maxamount");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNull() {
            addCriterion("Description is null");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNotNull() {
            addCriterion("Description is not null");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualTo(String value) {
            addCriterion("Description =", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualTo(String value) {
            addCriterion("Description <>", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThan(String value) {
            addCriterion("Description >", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("Description >=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThan(String value) {
            addCriterion("Description <", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualTo(String value) {
            addCriterion("Description <=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLike(String value) {
            addCriterion("Description like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotLike(String value) {
            addCriterion("Description not like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionIn(List<String> values) {
            addCriterion("Description in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotIn(List<String> values) {
            addCriterion("Description not in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionBetween(String value1, String value2) {
            addCriterion("Description between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotBetween(String value1, String value2) {
            addCriterion("Description not between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("Remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("Remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("Remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("Remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("Remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("Remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("Remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("Remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("Remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("Remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("Remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("Remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("Remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("Remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteIsNull() {
            addCriterion("WelcomeNote is null");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteIsNotNull() {
            addCriterion("WelcomeNote is not null");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteEqualTo(String value) {
            addCriterion("WelcomeNote =", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteNotEqualTo(String value) {
            addCriterion("WelcomeNote <>", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteGreaterThan(String value) {
            addCriterion("WelcomeNote >", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteGreaterThanOrEqualTo(String value) {
            addCriterion("WelcomeNote >=", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteLessThan(String value) {
            addCriterion("WelcomeNote <", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteLessThanOrEqualTo(String value) {
            addCriterion("WelcomeNote <=", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteLike(String value) {
            addCriterion("WelcomeNote like", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteNotLike(String value) {
            addCriterion("WelcomeNote not like", value, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteIn(List<String> values) {
            addCriterion("WelcomeNote in", values, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteNotIn(List<String> values) {
            addCriterion("WelcomeNote not in", values, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteBetween(String value1, String value2) {
            addCriterion("WelcomeNote between", value1, value2, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andWelcomenoteNotBetween(String value1, String value2) {
            addCriterion("WelcomeNote not between", value1, value2, "welcomenote");
            return (Criteria) this;
        }

        public Criteria andEndnoteIsNull() {
            addCriterion("EndNote is null");
            return (Criteria) this;
        }

        public Criteria andEndnoteIsNotNull() {
            addCriterion("EndNote is not null");
            return (Criteria) this;
        }

        public Criteria andEndnoteEqualTo(String value) {
            addCriterion("EndNote =", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteNotEqualTo(String value) {
            addCriterion("EndNote <>", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteGreaterThan(String value) {
            addCriterion("EndNote >", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteGreaterThanOrEqualTo(String value) {
            addCriterion("EndNote >=", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteLessThan(String value) {
            addCriterion("EndNote <", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteLessThanOrEqualTo(String value) {
            addCriterion("EndNote <=", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteLike(String value) {
            addCriterion("EndNote like", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteNotLike(String value) {
            addCriterion("EndNote not like", value, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteIn(List<String> values) {
            addCriterion("EndNote in", values, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteNotIn(List<String> values) {
            addCriterion("EndNote not in", values, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteBetween(String value1, String value2) {
            addCriterion("EndNote between", value1, value2, "endnote");
            return (Criteria) this;
        }

        public Criteria andEndnoteNotBetween(String value1, String value2) {
            addCriterion("EndNote not between", value1, value2, "endnote");
            return (Criteria) this;
        }

        public Criteria andIscertificateIsNull() {
            addCriterion("IsCertificate is null");
            return (Criteria) this;
        }

        public Criteria andIscertificateIsNotNull() {
            addCriterion("IsCertificate is not null");
            return (Criteria) this;
        }

        public Criteria andIscertificateEqualTo(Boolean value) {
            addCriterion("IsCertificate =", value, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateNotEqualTo(Boolean value) {
            addCriterion("IsCertificate <>", value, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateGreaterThan(Boolean value) {
            addCriterion("IsCertificate >", value, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateGreaterThanOrEqualTo(Boolean value) {
            addCriterion("IsCertificate >=", value, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateLessThan(Boolean value) {
            addCriterion("IsCertificate <", value, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateLessThanOrEqualTo(Boolean value) {
            addCriterion("IsCertificate <=", value, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateIn(List<Boolean> values) {
            addCriterion("IsCertificate in", values, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateNotIn(List<Boolean> values) {
            addCriterion("IsCertificate not in", values, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateBetween(Boolean value1, Boolean value2) {
            addCriterion("IsCertificate between", value1, value2, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andIscertificateNotBetween(Boolean value1, Boolean value2) {
            addCriterion("IsCertificate not between", value1, value2, "iscertificate");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("State is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("State is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(Integer value) {
            addCriterion("State =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(Integer value) {
            addCriterion("State <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(Integer value) {
            addCriterion("State >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("State >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(Integer value) {
            addCriterion("State <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(Integer value) {
            addCriterion("State <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<Integer> values) {
            addCriterion("State in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<Integer> values) {
            addCriterion("State not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(Integer value1, Integer value2) {
            addCriterion("State between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(Integer value1, Integer value2) {
            addCriterion("State not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andExpiretimeIsNull() {
            addCriterion("ExpireTime is null");
            return (Criteria) this;
        }

        public Criteria andExpiretimeIsNotNull() {
            addCriterion("ExpireTime is not null");
            return (Criteria) this;
        }

        public Criteria andExpiretimeEqualTo(Date value) {
            addCriterion("ExpireTime =", value, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeNotEqualTo(Date value) {
            addCriterion("ExpireTime <>", value, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeGreaterThan(Date value) {
            addCriterion("ExpireTime >", value, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeGreaterThanOrEqualTo(Date value) {
            addCriterion("ExpireTime >=", value, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeLessThan(Date value) {
            addCriterion("ExpireTime <", value, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeLessThanOrEqualTo(Date value) {
            addCriterion("ExpireTime <=", value, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeIn(List<Date> values) {
            addCriterion("ExpireTime in", values, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeNotIn(List<Date> values) {
            addCriterion("ExpireTime not in", values, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeBetween(Date value1, Date value2) {
            addCriterion("ExpireTime between", value1, value2, "expiretime");
            return (Criteria) this;
        }

        public Criteria andExpiretimeNotBetween(Date value1, Date value2) {
            addCriterion("ExpireTime not between", value1, value2, "expiretime");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("Type is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("Type is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("Type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("Type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("Type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("Type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("Type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("Type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("Type in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("Type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("Type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("Type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andPublishsourceIsNull() {
            addCriterion("PublishSource is null");
            return (Criteria) this;
        }

        public Criteria andPublishsourceIsNotNull() {
            addCriterion("PublishSource is not null");
            return (Criteria) this;
        }

        public Criteria andPublishsourceEqualTo(Integer value) {
            addCriterion("PublishSource =", value, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceNotEqualTo(Integer value) {
            addCriterion("PublishSource <>", value, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceGreaterThan(Integer value) {
            addCriterion("PublishSource >", value, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceGreaterThanOrEqualTo(Integer value) {
            addCriterion("PublishSource >=", value, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceLessThan(Integer value) {
            addCriterion("PublishSource <", value, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceLessThanOrEqualTo(Integer value) {
            addCriterion("PublishSource <=", value, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceIn(List<Integer> values) {
            addCriterion("PublishSource in", values, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceNotIn(List<Integer> values) {
            addCriterion("PublishSource not in", values, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceBetween(Integer value1, Integer value2) {
            addCriterion("PublishSource between", value1, value2, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishsourceNotBetween(Integer value1, Integer value2) {
            addCriterion("PublishSource not between", value1, value2, "publishsource");
            return (Criteria) this;
        }

        public Criteria andPublishtimeIsNull() {
            addCriterion("PublishTime is null");
            return (Criteria) this;
        }

        public Criteria andPublishtimeIsNotNull() {
            addCriterion("PublishTime is not null");
            return (Criteria) this;
        }

        public Criteria andPublishtimeEqualTo(Date value) {
            addCriterion("PublishTime =", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeNotEqualTo(Date value) {
            addCriterion("PublishTime <>", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeGreaterThan(Date value) {
            addCriterion("PublishTime >", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeGreaterThanOrEqualTo(Date value) {
            addCriterion("PublishTime >=", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeLessThan(Date value) {
            addCriterion("PublishTime <", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeLessThanOrEqualTo(Date value) {
            addCriterion("PublishTime <=", value, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeIn(List<Date> values) {
            addCriterion("PublishTime in", values, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeNotIn(List<Date> values) {
            addCriterion("PublishTime not in", values, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeBetween(Date value1, Date value2) {
            addCriterion("PublishTime between", value1, value2, "publishtime");
            return (Criteria) this;
        }

        public Criteria andPublishtimeNotBetween(Date value1, Date value2) {
            addCriterion("PublishTime not between", value1, value2, "publishtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNull() {
            addCriterion("CreateTime is null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIsNotNull() {
            addCriterion("CreateTime is not null");
            return (Criteria) this;
        }

        public Criteria andCreatetimeEqualTo(Date value) {
            addCriterion("CreateTime =", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotEqualTo(Date value) {
            addCriterion("CreateTime <>", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThan(Date value) {
            addCriterion("CreateTime >", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("CreateTime >=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThan(Date value) {
            addCriterion("CreateTime <", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeLessThanOrEqualTo(Date value) {
            addCriterion("CreateTime <=", value, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeIn(List<Date> values) {
            addCriterion("CreateTime in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotIn(List<Date> values) {
            addCriterion("CreateTime not in", values, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeBetween(Date value1, Date value2) {
            addCriterion("CreateTime between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andCreatetimeNotBetween(Date value1, Date value2) {
            addCriterion("CreateTime not between", value1, value2, "createtime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNull() {
            addCriterion("UpdateTime is null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIsNotNull() {
            addCriterion("UpdateTime is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeEqualTo(Date value) {
            addCriterion("UpdateTime =", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotEqualTo(Date value) {
            addCriterion("UpdateTime <>", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThan(Date value) {
            addCriterion("UpdateTime >", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("UpdateTime >=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThan(Date value) {
            addCriterion("UpdateTime <", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeLessThanOrEqualTo(Date value) {
            addCriterion("UpdateTime <=", value, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeIn(List<Date> values) {
            addCriterion("UpdateTime in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotIn(List<Date> values) {
            addCriterion("UpdateTime not in", values, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeBetween(Date value1, Date value2) {
            addCriterion("UpdateTime between", value1, value2, "updatetime");
            return (Criteria) this;
        }

        public Criteria andUpdatetimeNotBetween(Date value1, Date value2) {
            addCriterion("UpdateTime not between", value1, value2, "updatetime");
            return (Criteria) this;
        }

        public Criteria andTradenumberIsNull() {
            addCriterion("TradeNumber is null");
            return (Criteria) this;
        }

        public Criteria andTradenumberIsNotNull() {
            addCriterion("TradeNumber is not null");
            return (Criteria) this;
        }

        public Criteria andTradenumberEqualTo(Integer value) {
            addCriterion("TradeNumber =", value, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberNotEqualTo(Integer value) {
            addCriterion("TradeNumber <>", value, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberGreaterThan(Integer value) {
            addCriterion("TradeNumber >", value, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("TradeNumber >=", value, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberLessThan(Integer value) {
            addCriterion("TradeNumber <", value, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberLessThanOrEqualTo(Integer value) {
            addCriterion("TradeNumber <=", value, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberIn(List<Integer> values) {
            addCriterion("TradeNumber in", values, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberNotIn(List<Integer> values) {
            addCriterion("TradeNumber not in", values, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberBetween(Integer value1, Integer value2) {
            addCriterion("TradeNumber between", value1, value2, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andTradenumberNotBetween(Integer value1, Integer value2) {
            addCriterion("TradeNumber not between", value1, value2, "tradenumber");
            return (Criteria) this;
        }

        public Criteria andUnitIsNull() {
            addCriterion("Unit is null");
            return (Criteria) this;
        }

        public Criteria andUnitIsNotNull() {
            addCriterion("Unit is not null");
            return (Criteria) this;
        }

        public Criteria andUnitEqualTo(String value) {
            addCriterion("Unit =", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotEqualTo(String value) {
            addCriterion("Unit <>", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitGreaterThan(String value) {
            addCriterion("Unit >", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitGreaterThanOrEqualTo(String value) {
            addCriterion("Unit >=", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitLessThan(String value) {
            addCriterion("Unit <", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitLessThanOrEqualTo(String value) {
            addCriterion("Unit <=", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitLike(String value) {
            addCriterion("Unit like", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotLike(String value) {
            addCriterion("Unit not like", value, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitIn(List<String> values) {
            addCriterion("Unit in", values, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotIn(List<String> values) {
            addCriterion("Unit not in", values, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitBetween(String value1, String value2) {
            addCriterion("Unit between", value1, value2, "unit");
            return (Criteria) this;
        }

        public Criteria andUnitNotBetween(String value1, String value2) {
            addCriterion("Unit not between", value1, value2, "unit");
            return (Criteria) this;
        }

        public Criteria andIsfloatingIsNull() {
            addCriterion("IsFloating is null");
            return (Criteria) this;
        }

        public Criteria andIsfloatingIsNotNull() {
            addCriterion("IsFloating is not null");
            return (Criteria) this;
        }

        public Criteria andIsfloatingEqualTo(Boolean value) {
            addCriterion("IsFloating =", value, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingNotEqualTo(Boolean value) {
            addCriterion("IsFloating <>", value, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingGreaterThan(Boolean value) {
            addCriterion("IsFloating >", value, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingGreaterThanOrEqualTo(Boolean value) {
            addCriterion("IsFloating >=", value, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingLessThan(Boolean value) {
            addCriterion("IsFloating <", value, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingLessThanOrEqualTo(Boolean value) {
            addCriterion("IsFloating <=", value, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingIn(List<Boolean> values) {
            addCriterion("IsFloating in", values, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingNotIn(List<Boolean> values) {
            addCriterion("IsFloating not in", values, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingBetween(Boolean value1, Boolean value2) {
            addCriterion("IsFloating between", value1, value2, "isfloating");
            return (Criteria) this;
        }

        public Criteria andIsfloatingNotBetween(Boolean value1, Boolean value2) {
            addCriterion("IsFloating not between", value1, value2, "isfloating");
            return (Criteria) this;
        }

        public Criteria andFloatingrateIsNull() {
            addCriterion("FloatingRate is null");
            return (Criteria) this;
        }

        public Criteria andFloatingrateIsNotNull() {
            addCriterion("FloatingRate is not null");
            return (Criteria) this;
        }

        public Criteria andFloatingrateEqualTo(BigDecimal value) {
            addCriterion("FloatingRate =", value, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateNotEqualTo(BigDecimal value) {
            addCriterion("FloatingRate <>", value, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateGreaterThan(BigDecimal value) {
            addCriterion("FloatingRate >", value, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("FloatingRate >=", value, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateLessThan(BigDecimal value) {
            addCriterion("FloatingRate <", value, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("FloatingRate <=", value, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateIn(List<BigDecimal> values) {
            addCriterion("FloatingRate in", values, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateNotIn(List<BigDecimal> values) {
            addCriterion("FloatingRate not in", values, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("FloatingRate between", value1, value2, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andFloatingrateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("FloatingRate not between", value1, value2, "floatingrate");
            return (Criteria) this;
        }

        public Criteria andMinpriceIsNull() {
            addCriterion("MinPrice is null");
            return (Criteria) this;
        }

        public Criteria andMinpriceIsNotNull() {
            addCriterion("MinPrice is not null");
            return (Criteria) this;
        }

        public Criteria andMinpriceEqualTo(BigDecimal value) {
            addCriterion("MinPrice =", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceNotEqualTo(BigDecimal value) {
            addCriterion("MinPrice <>", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceGreaterThan(BigDecimal value) {
            addCriterion("MinPrice >", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("MinPrice >=", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceLessThan(BigDecimal value) {
            addCriterion("MinPrice <", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("MinPrice <=", value, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceIn(List<BigDecimal> values) {
            addCriterion("MinPrice in", values, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceNotIn(List<BigDecimal> values) {
            addCriterion("MinPrice not in", values, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MinPrice between", value1, value2, "minprice");
            return (Criteria) this;
        }

        public Criteria andMinpriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MinPrice not between", value1, value2, "minprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceIsNull() {
            addCriterion("MaxPrice is null");
            return (Criteria) this;
        }

        public Criteria andMaxpriceIsNotNull() {
            addCriterion("MaxPrice is not null");
            return (Criteria) this;
        }

        public Criteria andMaxpriceEqualTo(BigDecimal value) {
            addCriterion("MaxPrice =", value, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceNotEqualTo(BigDecimal value) {
            addCriterion("MaxPrice <>", value, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceGreaterThan(BigDecimal value) {
            addCriterion("MaxPrice >", value, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("MaxPrice >=", value, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceLessThan(BigDecimal value) {
            addCriterion("MaxPrice <", value, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("MaxPrice <=", value, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceIn(List<BigDecimal> values) {
            addCriterion("MaxPrice in", values, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceNotIn(List<BigDecimal> values) {
            addCriterion("MaxPrice not in", values, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MaxPrice between", value1, value2, "maxprice");
            return (Criteria) this;
        }

        public Criteria andMaxpriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("MaxPrice not between", value1, value2, "maxprice");
            return (Criteria) this;
        }

        public Criteria andCountryIsNull() {
            addCriterion("Country is null");
            return (Criteria) this;
        }

        public Criteria andCountryIsNotNull() {
            addCriterion("Country is not null");
            return (Criteria) this;
        }

        public Criteria andCountryEqualTo(Integer value) {
            addCriterion("Country =", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryNotEqualTo(Integer value) {
            addCriterion("Country <>", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryGreaterThan(Integer value) {
            addCriterion("Country >", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryGreaterThanOrEqualTo(Integer value) {
            addCriterion("Country >=", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryLessThan(Integer value) {
            addCriterion("Country <", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryLessThanOrEqualTo(Integer value) {
            addCriterion("Country <=", value, "country");
            return (Criteria) this;
        }

        public Criteria andCountryIn(List<Integer> values) {
            addCriterion("Country in", values, "country");
            return (Criteria) this;
        }

        public Criteria andCountryNotIn(List<Integer> values) {
            addCriterion("Country not in", values, "country");
            return (Criteria) this;
        }

        public Criteria andCountryBetween(Integer value1, Integer value2) {
            addCriterion("Country between", value1, value2, "country");
            return (Criteria) this;
        }

        public Criteria andCountryNotBetween(Integer value1, Integer value2) {
            addCriterion("Country not between", value1, value2, "country");
            return (Criteria) this;
        }

        public Criteria andExchangeIsNull() {
            addCriterion("Exchange is null");
            return (Criteria) this;
        }

        public Criteria andExchangeIsNotNull() {
            addCriterion("Exchange is not null");
            return (Criteria) this;
        }

        public Criteria andExchangeEqualTo(String value) {
            addCriterion("Exchange =", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotEqualTo(String value) {
            addCriterion("Exchange <>", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeGreaterThan(String value) {
            addCriterion("Exchange >", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeGreaterThanOrEqualTo(String value) {
            addCriterion("Exchange >=", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeLessThan(String value) {
            addCriterion("Exchange <", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeLessThanOrEqualTo(String value) {
            addCriterion("Exchange <=", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeLike(String value) {
            addCriterion("Exchange like", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotLike(String value) {
            addCriterion("Exchange not like", value, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeIn(List<String> values) {
            addCriterion("Exchange in", values, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotIn(List<String> values) {
            addCriterion("Exchange not in", values, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeBetween(String value1, String value2) {
            addCriterion("Exchange between", value1, value2, "exchange");
            return (Criteria) this;
        }

        public Criteria andExchangeNotBetween(String value1, String value2) {
            addCriterion("Exchange not between", value1, value2, "exchange");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateIsNull() {
            addCriterion("IsAdvancedCertificate is null");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateIsNotNull() {
            addCriterion("IsAdvancedCertificate is not null");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateEqualTo(Boolean value) {
            addCriterion("IsAdvancedCertificate =", value, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateNotEqualTo(Boolean value) {
            addCriterion("IsAdvancedCertificate <>", value, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateGreaterThan(Boolean value) {
            addCriterion("IsAdvancedCertificate >", value, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateGreaterThanOrEqualTo(Boolean value) {
            addCriterion("IsAdvancedCertificate >=", value, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateLessThan(Boolean value) {
            addCriterion("IsAdvancedCertificate <", value, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateLessThanOrEqualTo(Boolean value) {
            addCriterion("IsAdvancedCertificate <=", value, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateIn(List<Boolean> values) {
            addCriterion("IsAdvancedCertificate in", values, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateNotIn(List<Boolean> values) {
            addCriterion("IsAdvancedCertificate not in", values, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateBetween(Boolean value1, Boolean value2) {
            addCriterion("IsAdvancedCertificate between", value1, value2, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsadvancedcertificateNotBetween(Boolean value1, Boolean value2) {
            addCriterion("IsAdvancedCertificate not between", value1, value2, "isadvancedcertificate");
            return (Criteria) this;
        }

        public Criteria andIsmoibleIsNull() {
            addCriterion("IsMoible is null");
            return (Criteria) this;
        }

        public Criteria andIsmoibleIsNotNull() {
            addCriterion("IsMoible is not null");
            return (Criteria) this;
        }

        public Criteria andIsmoibleEqualTo(Boolean value) {
            addCriterion("IsMoible =", value, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleNotEqualTo(Boolean value) {
            addCriterion("IsMoible <>", value, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleGreaterThan(Boolean value) {
            addCriterion("IsMoible >", value, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleGreaterThanOrEqualTo(Boolean value) {
            addCriterion("IsMoible >=", value, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleLessThan(Boolean value) {
            addCriterion("IsMoible <", value, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleLessThanOrEqualTo(Boolean value) {
            addCriterion("IsMoible <=", value, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleIn(List<Boolean> values) {
            addCriterion("IsMoible in", values, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleNotIn(List<Boolean> values) {
            addCriterion("IsMoible not in", values, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleBetween(Boolean value1, Boolean value2) {
            addCriterion("IsMoible between", value1, value2, "ismoible");
            return (Criteria) this;
        }

        public Criteria andIsmoibleNotBetween(Boolean value1, Boolean value2) {
            addCriterion("IsMoible not between", value1, value2, "ismoible");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}